# coding:utf-8
from flask import make_response
from flask import render_template
import model


def get_page(page):
    # 1. 获取到所有的博客信息
    # Python3 里面的 dict.keys 方法不是返回一个单纯的列表了
    blogs = list(model.get_blog_dict().keys())

    # 2. 根据 page 获取到指定范围的博客信息
    beg = (page - 1) * 10
    if page < 1 or beg > len(blogs):
        return make_response("page not invalid!", 404)
    end = page * 10
    if end > len(blogs):
        end = len(blogs)
    blogs = blogs[beg:end]

    # 3. 根据博客列表信息渲染页面
    return make_response(render_template("blogs.html", blogs=blogs), 200)


def blog_frame(blog_name):
    # 1. 根据博客名字构造 iframe 请求的 url
    url = "/blog_content/" + blog_name
    # 2. 根据查询结构构造响应
    return render_template("blog.html", url=url)


def blog_content(blog_name):
    # 1. 根据博客名字从数据库中查找博客内容
    html = model.get_blog_content(blog_name)
    # 2. 渲染页面
    return html
